/**
* Copyright @ 2023 iAuto (Shanghai) Co., Ltd.
* All Rights Reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are NOT permitted except as agreed by
* iAuto (Shanghai) Co., Ltd.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*/

import { IAntdTablePageParams } from '@/types/type';




export type ISceneType = 0 | 1;

// 是否是官方场景，0-否,1-是
export type IOfficialScene = 0 | 1;
// 手机端是否可执行，0-否,1-是
export type IExecutedOnPhone = 0 | 1;
// 车机端是否二次确认，0-否,1-是
export type IDoubleCheckOnVehicle = 0 | 1;
// 是否是最新场景，0-否,1-是
export type ILatestScene = 0 | 1;
// 是否是热门场景，0-否,1-是
export type IHotScene = 0 | 1;
// 0-and-且，1-or-或
export type ICondition = 0 | 1;

//场景社区参数
export interface ISceneCommunityListParams extends IAntdTablePageParams {
  //场景名称
  name: string;
  //车系编码
  seriesCode: string;
  //车型编码
  modelCode: string;
}

//场景社区列表 item
export type ISceneCommunityItem = {
  // 必须 场景名称
  name: string;
  //  必须 场景ID
  sceneUuid: string;

  sceneRecordUuid:string;
  //  非必须 场景描述
  description?: string;
  // 必须 场景图标Url
  iconUrl: string;
  // 必须 场景背景图Url
  backgroundPicUrl: string;
  // 必须 下载量
  downloadTimes: number;
  // 必须 是否是最新场景，0-否,1-是
  latestScene: ILatestScene;
  // 必须 是否是热门场景，0-否,1-是
  hotScene: IHotScene;
  // 必须 是否是官方场景，0-否,1-是
  officialScene: IOfficialScene;
  // 必须 分类名称
  categoryName: string;
  // 必须 版本号
  version: string;
  // 必须 场景文件oss地址
  sceneFileUrl: string;
  // 非必须 发布时间
  publishTime?: string;
  // 必须 开发者id
  developerId: string;
  // 必须 开发者名字
  developerName: string;
  // 必须 场景分类UUID
  categoryUuid: string;
  // 必须 品牌名称
  brandName: string;
  // 必须 品牌编码
  brandCode: string;
  // 必须 车系名称
  seriesName: string;
  // 必须 车系编码
  seriesCode: string;
  // 必须 车型名称
  modelName: string;
  // 必须 车型编码
  modelCode: string;
  // 必须 引擎id
  engineId: string;
  // 必须 审核时间
  approveTime: string;
};

//场景社区列表
export type ISceneCommunityList = ISceneCommunityItem[];

//场景社区详情
export type ISceneCommunityDetails = {
  // 必须 场景名称
  name: string;
  // 必须 场景uuid
  sceneUuid: string;
  // 必须 场景简介
  description: string;
  // 必须 版本号
  version: string;
  // 必须 图标
  iconUrl: string;
  // 必须 背景图
  backgroundPicUrl: string;
  // 必须 品牌名称
  brandName: string;
  // 必须 车系名称
  seriesName: string;
  // 必须 车系名称
  modelName: string;
  // 必须 分类名称
  categoryName: string;
  // 必须 是否是最新场景，0-否,1-是
  latestScene: ILatestScene;
  // 必须 是否是热门场景，0-否,1-是
  hotScene: IHotScene;
  // 必须 是否是官方场景，0-否,1-是
  officialScene: IOfficialScene;
  // 非必须 手机端是否可执行
  executedOnPhone?: IExecutedOnPhone;
  // 非必须 车机端是否二次确认
  doubleCheckOnVehicle?: IDoubleCheckOnVehicle;
  // 必须 申请时间
  applyTime: string;
  // 必须 开发者id
  developerId: string;
  // 必须 开发者名称
  developerName: string;
};

//最新场景保存
export type LatestScenesConfig = {
  //近xx天内发布的场景
  withinDaysOfScenes: number;
  //最新发布的xx个场景
  amountOfLatestScenes: number;
  //0-and-且，1-or-或
  conditionValue: ICondition;
};

//下拉选类型
export type selectOption = {
  value: string;
  label: string;
};
